/*************************************************************************
	> File Name: RedCowForm.java
	> Author: Potter
	> Mail: tobewhatwewant@gmail.com 
	> Created Time: 2014年07月08日 星期二 23时48分40秒
 ************************************************************************/

/* 内部类--外嵌类
 *   内部类仅供它的外嵌类使用, 不能供其他类使用
 *   内部类不能声明类变量和类方法(static); 
 *   内部类可以调用外嵌类的成员变量和方法;
 *   外嵌类可以用内部类声明对象，作为外嵌类的成员
 * */

public class RedCowForm {
    static String formName; // 
    RedCow cow; // 内部类声明对象

    RedCowForm(String s) {
        cow = new RedCow(150, 112, 5000);
        formName = s;
    }

    public void showCowMess() {
        cow.speak();
    }

    class RedCow { // 内部类的声明
        String cowName = "红牛";
        int height, weight, price;

        RedCow(int h, int w, int p) {
            height = h;
            weight = w;
            price = p;
        }

        void speak() {
            System.out.println("偶是"+cowName+", 身高:"+height+"cm, 体重:"+weight+
                    "kg, 生活在"+formName);
        }
    }
}
